<!DOCTYPE html>
<html lang="en">
<head>
      <meta charset="UTF-8">
      <meta name="viewport" content="width=device-width, initial-scale=1.0">
      <title>Document</title>
</head>
<body>
      <script>
            // 每一个函数都有一个原型对象;
            // 原型对象在面向对象编程之中才有有用;
            // 构造函数 =创造了> 实例对象 =有指针> 原型对象;  
            // 原型链;
            // 1. 构造函数和原型的关系;
            function Foo(){

            }
            // 访问原型对象 Foo.prototype
            // constructor => 构造函数
            console.log( Foo.prototype )
            console.log( Foo.prototype.constructor )// × 没啥用;

            // 构造函数通过 Foo.prototype 访问 原型对象;
            // 原型对象通过 constructor 访问构造函数;
            
            // 2. 实例对象和原型对象的关系;
            // 实例对象.__proto__ => 原型对象;
            // var foo = new Foo();
            // console.log(foo);

            
      </script>
</body>
</html>